Skip to content

PPPSYS-56851 Refresh packaging and CI (uv, Python 3.10+, Ubuntu 26.04)#35

Draft
DareYouS wants to merge 8 commits into
masterfrom
PPPSYS-56851-packaging-ci-refresh
Draft

PPPSYS-56851 Refresh packaging and CI (uv, Python 3.10+, Ubuntu 26.04)#35
DareYouS wants to merge 8 commits into
masterfrom
PPPSYS-56851-packaging-ci-refresh

Conversation

@DareYouS
Copy link
Copy Markdown

@DareYouS DareYouS commented May 13, 2026

Ticket

PPPSYS-56851

Summary

  • Replaced Poetry-based packaging with uv + PEP 621 (pyproject.toml), setuptools build backend, and a committed uv.lock; PyPI release path uses uv publish (see release workflow).
  • Raised the supported interpreter floor to Python 3.10+ (runtime check in import_logs.py, README, CHANGELOG) and expanded CI to 3.10–3.14 on ubuntu-26.04 runners with updated checkout/setup-python actions where applicable.
  • Refreshed the Dockerfile to Ubuntu 26.04, distro Python, and blobfuse2 (amd64/arm64) instead of the old focal + blobfuse 1.x .deb.

Why

Older tooling (Poetry layout, EOL Python versions in CI, focal-era Docker and blobfuse) had drifted and broken against current runners and dependencies. This brings packaging, CI, and the container image in line with maintained stacks so builds and releases stay reliable.

Changes

  • pyproject.toml: [project] metadata, requires-python >= 3.10, setuptools backend, [tool.uv] / package = true; removed Poetry sections; package name normalized for PyPI-style distribution.
  • Removed poetry.lock; added uv.lock; MANIFEST.in / setup.py touched as needed for the setuptools layout.
  • Workflows: test matrix and package build jobs aligned with uv; release job uses uv for build/publish; runs-on: ubuntu-26.04 across lint/test/package/release.
  • CHANGELOG.md and README.md: document Python 3.10+ and the uv migration.
  • Dockerfile: ubuntu:26.04, non-interactive apt, blobfuse2 install by architecture.

Test plan

  • Confirm GitHub Actions green on this branch (test + package + lint jobs on ubuntu-26.04).
  • Optional: from a clean checkout at PR HEAD, cd tests && PYTEST_SESSION=1 pytest (or your team’s standard command) on one Python (e.g. 3.12).
  • Optional: docker build for the updated Dockerfile on amd64 (and arm64 if you ship multi-arch).

Risks / rollout notes

  • Consumers must run Python 3.10+; anyone on 3.8/3.9 needs to upgrade.
  • Container users who still invoke blobfuse must move to blobfuse2 (binary and configuration differ from v1).

@DareYouS DareYouS requested review from a team, janusz-piechota-piwik and mrfijas and removed request for a team May 13, 2026 08:22
@DareYouS DareYouS changed the title PPPSYS-56851 — Refresh packaging and CI (uv, Python 3.10+, Ubuntu 26.04) PPPSYS-56851 Refresh packaging and CI (uv, Python 3.10+, Ubuntu 26.04) May 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant